Shifting objects

You have already seen how the "Shift" property works. Let us examine the next mode of shifting, "Shift on overlapping." In the object inspector, the "ShiftMode=smWhenOverlapped" property value corresponds to this mode. Thus, object shifting will be performed in case, when the object from above overlaps the given object during stretching. Three cases are shown in the picture below. As you see, the bottom object with the enabled "Shift when overlapping" option shifts only in the latter case, i.e. when there is much text in the top object and it overlaps the bottom one.

If the "Shift" option is enabled, the bottom object will be shifted anyway:

In some cases, it allows to realize rather complicated logic of object design, especially if an object overlaps several other reports at the same time. Thus, in the following example both of the upper objects contain stretchable texts, and the bottom one has the enabled "shifting when blocking" option. The bottom object will always be displayed closely to the object, which contains more text, irrespective of text size in the upper objects:

In this example, if the "Shift" option is enabled for this object, the bottom object will shift twice, since it is located underneath two objects and thus an unnecessary gap is formed.